package com.zx.controller;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.cloud.context.config.annotation.RefreshScope;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.http.HttpStatus;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;

/**
 * 测试动态刷新
 * @author jack.wu
 * @version 1.0
 * @date 2020-03-08
 */
//@RestController
//@RefreshScope
//public class ProductController1 {
//
//    /**
//     * 使用spring @value 获取 需要添加@RefreshScope
//     */
//    @Value("${app.name}")
//    private String name;
//
//    @Value("${app.env}")
//    private String env;
//
//    /**
//     * 这个可以支持动态刷新不需要@RefreshScope
//     */
//    @Resource
//    private ConfigurableApplicationContext configurableApplicationContext;
//
//    @GetMapping("/app/name")
//    @ResponseStatus(HttpStatus.OK)
//    public String findById() {
//        return configurableApplicationContext.getEnvironment().getProperty("app.name");
//    }
//
//    @GetMapping("/app/name1")
//    @ResponseStatus(HttpStatus.OK)
//    public String getName() {
//        return name;
//    }
//
//    @GetMapping("/app/env")
//    @ResponseStatus(HttpStatus.OK)
//    public String getDev() {
//        return env;
//    }
//}
